CategoryEditPortlet = Class.extend({
	init: function()	{
		this.name = "CategoryEditPortlet";
	},
	
	onBegin: function()	{
		this.registerObserver();
	},
	
	onEnd: function()	{
		this.unregisterObserver();
	},
	
	onEditCategoryImage: function()	{
		this.requestForEffectiveResource('ImageUploader').submit();
	},
	
	onEditCategory: function()	{
		var name=this.requestForEffectiveResource('Name').val();
		if (name.trim() == '')	{
			alert('Bạn chưa nhập tên danh mục');
			return;
		}
		
		var obj = this;
		var id = this.getRequest().getParam('id');
		var subject = SingletonFactory.getInstance(Subject);
		obj.onAjax('admin', 'edit-category', {name: name, id: id}, 'POST', {
			'onSuccess': function(ret)	{
				alert('Sửa thành công');
				subject.notifyEvent('RequestRoute', new Request('ManageCategories'));
			}
		});
	},
	
	run: function()	{
		var obj = this;
		var id = this.getRequest().getParam('id');
		this.onAjax('categories', 'load-category-detail', {id: id}, 'GET', {
			'onSuccess': function(ret)	{
				obj.model = ret;
				obj.model.root = SingletonFactory.getInstance(Application).getSystemProperties().get('host.root');
				obj.getPortletPlaceholder().paintCanvas(obj.render());
				
				obj.requestForEffectiveResource('ImageUploader').submit(function() {
					var fr = $('#avatar-upload-frame');
					$(fr).one('load', function() {
						var response = fr.contents().find('body').html();
				    	var ret = $.parseJSON(response);
				    	if (ret.result == "error")	{
//				    		errors = {};
//				    		errors.errors = ret.message; 
//				    		$(value).find('#AvatarUploaderErrorPlaceholder').html(tmpl('AvatarUploaderError', errors));
				    	} else {
				    		alert('Sửa thành công');
//				    		$('#BriefInfoEditPortlet-Avatar').find('img').remove();
//				    		$('#BriefInfoEditPortlet-Avatar').html('<img style="width: 100px" src="avatar/'+ret.result+'" />');
//			    			var subject = SingletonFactory.getInstance(Subject);
//			    			subject.notifyEvent('NotifyGlobal', 'Bạn đã thay đổi avatar thành công. Nếu ảnh chưa hiện ra, hãy ấn F5 để thấy sự thay đổi');
				    	}
					});
				});
			}
		});
	}
}).implement(PortletInterface).implement(RenderInterface).implement(AjaxInterface).implement(ObserverInterface);